//package leetcode;
//
//import java.util.HashSet;
//import java.util.Set;
//
//class ListNode {
//    int val;
//    ListNode next;
//
//    public ListNode(int val) {
//        this.val = val;
//    }
//}
//
//class Solution {
//    public ListNode getIntersectionNode(ListNode headA, ListNode headB) {
//        Set<ListNode> visited = new HashSet<ListNode>();
//        ListNode temp = headA;
//
//        while (temp != null) {
//            visited.add(temp);
//            temp = temp.next;
//        }
//
//        temp = headB;
//
//        while (temp != null) {
//            if (visited.contains(temp)) {
//                return temp;
//            }
//            temp = temp.next;
//        }
//
//        return null;
//    }
//}
//
//public class Test5S {
//}
